package com.zhongwang.mms.gen.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class MChangeExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public MChangeExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andCagIdIsNull() {
            addCriterion("cag_id is null");
            return (Criteria) this;
        }

        public Criteria andCagIdIsNotNull() {
            addCriterion("cag_id is not null");
            return (Criteria) this;
        }

        public Criteria andCagIdEqualTo(Integer value) {
            addCriterion("cag_id =", value, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdNotEqualTo(Integer value) {
            addCriterion("cag_id <>", value, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdGreaterThan(Integer value) {
            addCriterion("cag_id >", value, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("cag_id >=", value, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdLessThan(Integer value) {
            addCriterion("cag_id <", value, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdLessThanOrEqualTo(Integer value) {
            addCriterion("cag_id <=", value, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdIn(List<Integer> values) {
            addCriterion("cag_id in", values, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdNotIn(List<Integer> values) {
            addCriterion("cag_id not in", values, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdBetween(Integer value1, Integer value2) {
            addCriterion("cag_id between", value1, value2, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagIdNotBetween(Integer value1, Integer value2) {
            addCriterion("cag_id not between", value1, value2, "cagId");
            return (Criteria) this;
        }

        public Criteria andCagAppDateIsNull() {
            addCriterion("cag_app_date is null");
            return (Criteria) this;
        }

        public Criteria andCagAppDateIsNotNull() {
            addCriterion("cag_app_date is not null");
            return (Criteria) this;
        }

        public Criteria andCagAppDateEqualTo(Date value) {
            addCriterion("cag_app_date =", value, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateNotEqualTo(Date value) {
            addCriterion("cag_app_date <>", value, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateGreaterThan(Date value) {
            addCriterion("cag_app_date >", value, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateGreaterThanOrEqualTo(Date value) {
            addCriterion("cag_app_date >=", value, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateLessThan(Date value) {
            addCriterion("cag_app_date <", value, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateLessThanOrEqualTo(Date value) {
            addCriterion("cag_app_date <=", value, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateIn(List<Date> values) {
            addCriterion("cag_app_date in", values, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateNotIn(List<Date> values) {
            addCriterion("cag_app_date not in", values, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateBetween(Date value1, Date value2) {
            addCriterion("cag_app_date between", value1, value2, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppDateNotBetween(Date value1, Date value2) {
            addCriterion("cag_app_date not between", value1, value2, "cagAppDate");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronIsNull() {
            addCriterion("cag_app_peron is null");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronIsNotNull() {
            addCriterion("cag_app_peron is not null");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronEqualTo(String value) {
            addCriterion("cag_app_peron =", value, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronNotEqualTo(String value) {
            addCriterion("cag_app_peron <>", value, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronGreaterThan(String value) {
            addCriterion("cag_app_peron >", value, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronGreaterThanOrEqualTo(String value) {
            addCriterion("cag_app_peron >=", value, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronLessThan(String value) {
            addCriterion("cag_app_peron <", value, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronLessThanOrEqualTo(String value) {
            addCriterion("cag_app_peron <=", value, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronLike(String value) {
            addCriterion("cag_app_peron like", value, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronNotLike(String value) {
            addCriterion("cag_app_peron not like", value, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronIn(List<String> values) {
            addCriterion("cag_app_peron in", values, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronNotIn(List<String> values) {
            addCriterion("cag_app_peron not in", values, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronBetween(String value1, String value2) {
            addCriterion("cag_app_peron between", value1, value2, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAppPeronNotBetween(String value1, String value2) {
            addCriterion("cag_app_peron not between", value1, value2, "cagAppPeron");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateIsNull() {
            addCriterion("cag_audit_date is null");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateIsNotNull() {
            addCriterion("cag_audit_date is not null");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateEqualTo(Date value) {
            addCriterion("cag_audit_date =", value, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateNotEqualTo(Date value) {
            addCriterion("cag_audit_date <>", value, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateGreaterThan(Date value) {
            addCriterion("cag_audit_date >", value, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateGreaterThanOrEqualTo(Date value) {
            addCriterion("cag_audit_date >=", value, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateLessThan(Date value) {
            addCriterion("cag_audit_date <", value, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateLessThanOrEqualTo(Date value) {
            addCriterion("cag_audit_date <=", value, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateIn(List<Date> values) {
            addCriterion("cag_audit_date in", values, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateNotIn(List<Date> values) {
            addCriterion("cag_audit_date not in", values, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateBetween(Date value1, Date value2) {
            addCriterion("cag_audit_date between", value1, value2, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditDateNotBetween(Date value1, Date value2) {
            addCriterion("cag_audit_date not between", value1, value2, "cagAuditDate");
            return (Criteria) this;
        }

        public Criteria andCagAuditorIsNull() {
            addCriterion("cag_auditor is null");
            return (Criteria) this;
        }

        public Criteria andCagAuditorIsNotNull() {
            addCriterion("cag_auditor is not null");
            return (Criteria) this;
        }

        public Criteria andCagAuditorEqualTo(String value) {
            addCriterion("cag_auditor =", value, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorNotEqualTo(String value) {
            addCriterion("cag_auditor <>", value, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorGreaterThan(String value) {
            addCriterion("cag_auditor >", value, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorGreaterThanOrEqualTo(String value) {
            addCriterion("cag_auditor >=", value, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorLessThan(String value) {
            addCriterion("cag_auditor <", value, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorLessThanOrEqualTo(String value) {
            addCriterion("cag_auditor <=", value, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorLike(String value) {
            addCriterion("cag_auditor like", value, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorNotLike(String value) {
            addCriterion("cag_auditor not like", value, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorIn(List<String> values) {
            addCriterion("cag_auditor in", values, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorNotIn(List<String> values) {
            addCriterion("cag_auditor not in", values, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorBetween(String value1, String value2) {
            addCriterion("cag_auditor between", value1, value2, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagAuditorNotBetween(String value1, String value2) {
            addCriterion("cag_auditor not between", value1, value2, "cagAuditor");
            return (Criteria) this;
        }

        public Criteria andCagCodeIsNull() {
            addCriterion("cag_code is null");
            return (Criteria) this;
        }

        public Criteria andCagCodeIsNotNull() {
            addCriterion("cag_code is not null");
            return (Criteria) this;
        }

        public Criteria andCagCodeEqualTo(String value) {
            addCriterion("cag_code =", value, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeNotEqualTo(String value) {
            addCriterion("cag_code <>", value, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeGreaterThan(String value) {
            addCriterion("cag_code >", value, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeGreaterThanOrEqualTo(String value) {
            addCriterion("cag_code >=", value, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeLessThan(String value) {
            addCriterion("cag_code <", value, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeLessThanOrEqualTo(String value) {
            addCriterion("cag_code <=", value, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeLike(String value) {
            addCriterion("cag_code like", value, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeNotLike(String value) {
            addCriterion("cag_code not like", value, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeIn(List<String> values) {
            addCriterion("cag_code in", values, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeNotIn(List<String> values) {
            addCriterion("cag_code not in", values, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeBetween(String value1, String value2) {
            addCriterion("cag_code between", value1, value2, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagCodeNotBetween(String value1, String value2) {
            addCriterion("cag_code not between", value1, value2, "cagCode");
            return (Criteria) this;
        }

        public Criteria andCagReasonIsNull() {
            addCriterion("cag_reason is null");
            return (Criteria) this;
        }

        public Criteria andCagReasonIsNotNull() {
            addCriterion("cag_reason is not null");
            return (Criteria) this;
        }

        public Criteria andCagReasonEqualTo(String value) {
            addCriterion("cag_reason =", value, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonNotEqualTo(String value) {
            addCriterion("cag_reason <>", value, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonGreaterThan(String value) {
            addCriterion("cag_reason >", value, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonGreaterThanOrEqualTo(String value) {
            addCriterion("cag_reason >=", value, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonLessThan(String value) {
            addCriterion("cag_reason <", value, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonLessThanOrEqualTo(String value) {
            addCriterion("cag_reason <=", value, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonLike(String value) {
            addCriterion("cag_reason like", value, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonNotLike(String value) {
            addCriterion("cag_reason not like", value, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonIn(List<String> values) {
            addCriterion("cag_reason in", values, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonNotIn(List<String> values) {
            addCriterion("cag_reason not in", values, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonBetween(String value1, String value2) {
            addCriterion("cag_reason between", value1, value2, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagReasonNotBetween(String value1, String value2) {
            addCriterion("cag_reason not between", value1, value2, "cagReason");
            return (Criteria) this;
        }

        public Criteria andCagStatusIsNull() {
            addCriterion("cag_status is null");
            return (Criteria) this;
        }

        public Criteria andCagStatusIsNotNull() {
            addCriterion("cag_status is not null");
            return (Criteria) this;
        }

        public Criteria andCagStatusEqualTo(Integer value) {
            addCriterion("cag_status =", value, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusNotEqualTo(Integer value) {
            addCriterion("cag_status <>", value, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusGreaterThan(Integer value) {
            addCriterion("cag_status >", value, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("cag_status >=", value, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusLessThan(Integer value) {
            addCriterion("cag_status <", value, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusLessThanOrEqualTo(Integer value) {
            addCriterion("cag_status <=", value, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusIn(List<Integer> values) {
            addCriterion("cag_status in", values, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusNotIn(List<Integer> values) {
            addCriterion("cag_status not in", values, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusBetween(Integer value1, Integer value2) {
            addCriterion("cag_status between", value1, value2, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("cag_status not between", value1, value2, "cagStatus");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountIsNull() {
            addCriterion("cag_app_account is null");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountIsNotNull() {
            addCriterion("cag_app_account is not null");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountEqualTo(String value) {
            addCriterion("cag_app_account =", value, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountNotEqualTo(String value) {
            addCriterion("cag_app_account <>", value, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountGreaterThan(String value) {
            addCriterion("cag_app_account >", value, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountGreaterThanOrEqualTo(String value) {
            addCriterion("cag_app_account >=", value, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountLessThan(String value) {
            addCriterion("cag_app_account <", value, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountLessThanOrEqualTo(String value) {
            addCriterion("cag_app_account <=", value, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountLike(String value) {
            addCriterion("cag_app_account like", value, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountNotLike(String value) {
            addCriterion("cag_app_account not like", value, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountIn(List<String> values) {
            addCriterion("cag_app_account in", values, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountNotIn(List<String> values) {
            addCriterion("cag_app_account not in", values, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountBetween(String value1, String value2) {
            addCriterion("cag_app_account between", value1, value2, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagAppAccountNotBetween(String value1, String value2) {
            addCriterion("cag_app_account not between", value1, value2, "cagAppAccount");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescIsNull() {
            addCriterion("cag_need_desc is null");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescIsNotNull() {
            addCriterion("cag_need_desc is not null");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescEqualTo(String value) {
            addCriterion("cag_need_desc =", value, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescNotEqualTo(String value) {
            addCriterion("cag_need_desc <>", value, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescGreaterThan(String value) {
            addCriterion("cag_need_desc >", value, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescGreaterThanOrEqualTo(String value) {
            addCriterion("cag_need_desc >=", value, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescLessThan(String value) {
            addCriterion("cag_need_desc <", value, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescLessThanOrEqualTo(String value) {
            addCriterion("cag_need_desc <=", value, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescLike(String value) {
            addCriterion("cag_need_desc like", value, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescNotLike(String value) {
            addCriterion("cag_need_desc not like", value, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescIn(List<String> values) {
            addCriterion("cag_need_desc in", values, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescNotIn(List<String> values) {
            addCriterion("cag_need_desc not in", values, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescBetween(String value1, String value2) {
            addCriterion("cag_need_desc between", value1, value2, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedDescNotBetween(String value1, String value2) {
            addCriterion("cag_need_desc not between", value1, value2, "cagNeedDesc");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeIsNull() {
            addCriterion("cag_need_code is null");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeIsNotNull() {
            addCriterion("cag_need_code is not null");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeEqualTo(String value) {
            addCriterion("cag_need_code =", value, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeNotEqualTo(String value) {
            addCriterion("cag_need_code <>", value, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeGreaterThan(String value) {
            addCriterion("cag_need_code >", value, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeGreaterThanOrEqualTo(String value) {
            addCriterion("cag_need_code >=", value, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeLessThan(String value) {
            addCriterion("cag_need_code <", value, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeLessThanOrEqualTo(String value) {
            addCriterion("cag_need_code <=", value, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeLike(String value) {
            addCriterion("cag_need_code like", value, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeNotLike(String value) {
            addCriterion("cag_need_code not like", value, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeIn(List<String> values) {
            addCriterion("cag_need_code in", values, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeNotIn(List<String> values) {
            addCriterion("cag_need_code not in", values, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeBetween(String value1, String value2) {
            addCriterion("cag_need_code between", value1, value2, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedCodeNotBetween(String value1, String value2) {
            addCriterion("cag_need_code not between", value1, value2, "cagNeedCode");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameIsNull() {
            addCriterion("cag_need_name is null");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameIsNotNull() {
            addCriterion("cag_need_name is not null");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameEqualTo(String value) {
            addCriterion("cag_need_name =", value, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameNotEqualTo(String value) {
            addCriterion("cag_need_name <>", value, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameGreaterThan(String value) {
            addCriterion("cag_need_name >", value, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameGreaterThanOrEqualTo(String value) {
            addCriterion("cag_need_name >=", value, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameLessThan(String value) {
            addCriterion("cag_need_name <", value, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameLessThanOrEqualTo(String value) {
            addCriterion("cag_need_name <=", value, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameLike(String value) {
            addCriterion("cag_need_name like", value, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameNotLike(String value) {
            addCriterion("cag_need_name not like", value, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameIn(List<String> values) {
            addCriterion("cag_need_name in", values, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameNotIn(List<String> values) {
            addCriterion("cag_need_name not in", values, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameBetween(String value1, String value2) {
            addCriterion("cag_need_name between", value1, value2, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagNeedNameNotBetween(String value1, String value2) {
            addCriterion("cag_need_name not between", value1, value2, "cagNeedName");
            return (Criteria) this;
        }

        public Criteria andCagUseDescIsNull() {
            addCriterion("cag_use_desc is null");
            return (Criteria) this;
        }

        public Criteria andCagUseDescIsNotNull() {
            addCriterion("cag_use_desc is not null");
            return (Criteria) this;
        }

        public Criteria andCagUseDescEqualTo(String value) {
            addCriterion("cag_use_desc =", value, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescNotEqualTo(String value) {
            addCriterion("cag_use_desc <>", value, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescGreaterThan(String value) {
            addCriterion("cag_use_desc >", value, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescGreaterThanOrEqualTo(String value) {
            addCriterion("cag_use_desc >=", value, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescLessThan(String value) {
            addCriterion("cag_use_desc <", value, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescLessThanOrEqualTo(String value) {
            addCriterion("cag_use_desc <=", value, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescLike(String value) {
            addCriterion("cag_use_desc like", value, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescNotLike(String value) {
            addCriterion("cag_use_desc not like", value, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescIn(List<String> values) {
            addCriterion("cag_use_desc in", values, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescNotIn(List<String> values) {
            addCriterion("cag_use_desc not in", values, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescBetween(String value1, String value2) {
            addCriterion("cag_use_desc between", value1, value2, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseDescNotBetween(String value1, String value2) {
            addCriterion("cag_use_desc not between", value1, value2, "cagUseDesc");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeIsNull() {
            addCriterion("cag_use_code is null");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeIsNotNull() {
            addCriterion("cag_use_code is not null");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeEqualTo(String value) {
            addCriterion("cag_use_code =", value, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeNotEqualTo(String value) {
            addCriterion("cag_use_code <>", value, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeGreaterThan(String value) {
            addCriterion("cag_use_code >", value, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeGreaterThanOrEqualTo(String value) {
            addCriterion("cag_use_code >=", value, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeLessThan(String value) {
            addCriterion("cag_use_code <", value, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeLessThanOrEqualTo(String value) {
            addCriterion("cag_use_code <=", value, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeLike(String value) {
            addCriterion("cag_use_code like", value, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeNotLike(String value) {
            addCriterion("cag_use_code not like", value, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeIn(List<String> values) {
            addCriterion("cag_use_code in", values, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeNotIn(List<String> values) {
            addCriterion("cag_use_code not in", values, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeBetween(String value1, String value2) {
            addCriterion("cag_use_code between", value1, value2, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseCodeNotBetween(String value1, String value2) {
            addCriterion("cag_use_code not between", value1, value2, "cagUseCode");
            return (Criteria) this;
        }

        public Criteria andCagUseNameIsNull() {
            addCriterion("cag_use_name is null");
            return (Criteria) this;
        }

        public Criteria andCagUseNameIsNotNull() {
            addCriterion("cag_use_name is not null");
            return (Criteria) this;
        }

        public Criteria andCagUseNameEqualTo(String value) {
            addCriterion("cag_use_name =", value, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameNotEqualTo(String value) {
            addCriterion("cag_use_name <>", value, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameGreaterThan(String value) {
            addCriterion("cag_use_name >", value, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameGreaterThanOrEqualTo(String value) {
            addCriterion("cag_use_name >=", value, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameLessThan(String value) {
            addCriterion("cag_use_name <", value, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameLessThanOrEqualTo(String value) {
            addCriterion("cag_use_name <=", value, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameLike(String value) {
            addCriterion("cag_use_name like", value, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameNotLike(String value) {
            addCriterion("cag_use_name not like", value, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameIn(List<String> values) {
            addCriterion("cag_use_name in", values, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameNotIn(List<String> values) {
            addCriterion("cag_use_name not in", values, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameBetween(String value1, String value2) {
            addCriterion("cag_use_name between", value1, value2, "cagUseName");
            return (Criteria) this;
        }

        public Criteria andCagUseNameNotBetween(String value1, String value2) {
            addCriterion("cag_use_name not between", value1, value2, "cagUseName");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}